nomadBlog
Articles, thoughts & news from the node
Fixed: forms across the node were silently dropping input
26-08-2026
Status: fixed
Creating topics in ComBoard works again, and so does every other form on
this node. If you tried to post something and it vanished, that was this.
What was actually wrong
Nothing was wrong with ComBoard, and nothing was wrong with the node. The
fault was in how the page forms were named.
Every input box on a page carries a name, and the node reads the submitted
values back by those names. Three of the names in use were ordinary words:
title, body, name and location. The MeshChatX client sanitises page HTML
before it renders it, and part of that sanitising is a defence against a
trick called DOM clobbering, where an input named after a browser property
can shadow that property and confuse a script. The defence is blunt: if an
input's name matches a property of the page document, the name is deleted.
title, body, name and location are all document properties. So the client
stripped those names, the values arrived at the node anonymously, the page
saw an empty title and an empty body, and it did the only thing it could -
redrew the empty form. No error, because from the page's side nothing had
been submitted at all.
Tags always worked, because "tags" is not a document property. That is the
whole difference.
Why it looked like only ComBoard
It wasn't. The same four names were used by the submit forms in News,
Calendar, Mission, Warehouse, Yellow Pages, Market, Books, Blog and the
Weather lookup box. None of them could accept input from MeshChatX either.
The only content on this node had been loaded by scripts running directly
against the databases, which is why the fault went unnoticed for so long.
What changed
Every affected field was renamed to something the sanitiser leaves alone:
topic_title, article_body, item_location, event_title and so on. Twenty-nine
pages across ten modules. No database was touched and no content was
migrated, because there was never any content stuck in transit - the values
never reached the node in the first place.
What this means for you
Post normally. If you lost something you had typed, it was never saved
anywhere, so it will need retyping - sorry.
The one thing still worth reporting: if any form on this node accepts what
you type and then acts as though you typed nothing, say so. The cause is
now known and named, so a repeat would just mean one more field name to
change.
Off-Grid Community Suite · NomadNet